/** @file i2c.h 
 * Schnittstelle zu einem beliebigen I2C Bus
 * 
 * @author Daniel Kummer, Sebastian Kummer
 * @date Donnerstag, Dezember 12, 2007
 * @version 1.0
 */

#ifndef I2C_H_
#define I2C_H_


/**
 * Lies ein Register über einen I2C-Bus
 * @param device Device
 * @param client Client
 * @param reg Register
 * @param value Wert
 * @return Null wenn erfolgreich beendet
 */
int lcv_i2c_write_register(char * device, unsigned char client, unsigned char reg, unsigned short value);

/**
 * Schreibt ein Register über einen I2C-Bus
 * @param device Device
 * @param client Client
 * @param reg Register
 * @return Registerwert
 */
int lcv_i2c_read_register(char * device, unsigned char client, unsigned char reg);

/**
 * Erstellt einen Dump eines Clients über einen I2C-Bus
 * @param device Device
 * @param client Client
 * @param start Startadresse
 * @param end Endadresse
 */
void lcv_i2c_dump_register(char * device, unsigned char client, unsigned short start, unsigned short end);

/**
 * Scannt den I2C-Bus
 * @param device Device
 */
void lcv_i2c_scan_bus(char * device);


#endif /*I2C_H_*/
